package com.pug.job.task;

import lombok.extern.slf4j.Slf4j;
import org.springframework.scheduling.annotation.EnableScheduling;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Component;

import java.time.LocalDateTime;

/**
 * @author RenGaoshuai
 * @date 2023/7/5 14:16
 * @description
 */
@Component
@Slf4j
@EnableScheduling //开启定时任务的支持。这个是局部的方式，如果你想全局生效。可用把开关注解放入到启动类上，这样就是一种全局的方式开启了
public class ScheduledPrintOutTask {


    /**
     * fixedDelay = 3000 每3000钟执行一次（3000毫秒 3秒）
     * initialDelay = 5000 项目启动后，延迟5000钟以后在执行
     */
    //@Scheduled(fixedDelay = 3000,initialDelay = 10000)
    public void task1(){
        log.info("=======>Scheduled定时任务执行开始，当前时间：" + LocalDateTime.now());
        log.info("Scheduled任务执行中------");
        log.info("Scheduled任务执行中------");
        log.info("Scheduled任务执行中------");
        log.info("Scheduled任务执行中------");
        log.info("Scheduled任务执行中------");
        log.info("Scheduled任务执行中------");
        log.info("Scheduled任务执行中------");
        log.info("Scheduled任务执行中------");
        log.info("=======>Scheduled定时任务执行结束，当前时间：" + LocalDateTime.now());
    }

    //@Scheduled(cron = "0/5 * * * * ?")
    public void task2(){
        log.info("=======>Scheduled-cron定时任务执行开始，当前时间：" + LocalDateTime.now());
        log.info("Scheduled-cron任务执行中------");
        log.info("Scheduled-cron任务执行中------");
        log.info("Scheduled-cron任务执行中------");
        log.info("Scheduled-cron任务执行中------");
        log.info("Scheduled-cron任务执行中------");
        log.info("Scheduled-cron任务执行中------");
        log.info("Scheduled-cron任务执行中------");
        log.info("Scheduled-cron任务执行中------");
        log.info("=======>Scheduled-cron定时任务执行结束，当前时间：" + LocalDateTime.now());
    }
}
